//要交作业可以把这些注释删除 保不齐认识汉字
//参考你的代码一共修改了两处，
//第一处 添加了一个方法供draw方法调用，方法名字随便起
/*StartX StartY 定义为绘图区坐标系的原点，而不是待画圆的圆心，当然更不是画板canvas的原点
* type 为类型，一个完整园的四分之一有四种样式，当然可以继续扩展，此处可以用switch语句，
* r为绘图区长度，等于待绘圆的半径，待绘矩形的长，注意这里用的是半径概念，当然可以改用直径
* */
function one(startX, startY, type, r) {
    let d = 2 * r;
    let e = r / 2;
    if (type === 0) {
        arc(startX, startY, d, d, 0 * PI, 0.5 * PI);
    } else if (type === 1) {
        arc(startX + r, startY, d, d, 0.5 * PI, 1 * PI);
    } else if (type === 2) {
        arc(startX + r, startY + r, d, d, 1 * PI, 1.5 * PI);
    } else if (type === 3) {
        arc(startX, startY + r, d, d, 1.5 * PI, 2 * PI);
    } else if (type === 4) {
        rect(startX, startY, r, e)
    } else if (type === 5) {
        rect(startX + e, startY, e, r)
    } else if (type === 6) {
        rect(startX, startY + e, r, e)
    } else if (type === 7) {
        rect(startX, startY, e, r)
    } else {
        rect(startX+e,startY+e,e,e)
    }
}

function setup() {
    createCanvas(windowWidth, windowHeight);
    background(100)
}

function draw() {

    for (let X = 0; X < width; X += 100) {
        for (let Y = 0; Y < height; Y += 100) {
            if ((X / 100 % 2 == 0) && (Y / 100 % 2 == 0) || (X / 100 % 2 == 1) && (Y / 100 % 2 == 1)) {
                //  第二处 更改，调用one方法 ，测试发现random（0,4）返回值是小数，所以用floor方法取整数部分
                //此处取了[0,4), 只会有圆形图片，也可以改取[0,8),具体看one方法里怎么写。
                one(X-100,Y,Math.floor(random(0,4)),100);
                //arc(X, Y, 200, 200, HALF_PI, PI);

            } else {
                strokeWeight(2);
                beginShape(LINES);
                vertex(random(X - 100, X), Y);
                vertex(random(X - 100, X), Y + 100);
                endShape();

            }
        }
    }
    noLoop();
}
//以下这段代码可以不用看
//只是进一步修正供参考，需求：第一张图片是划线
function draw233() {
    let r=100;

    for (let x = 0; x < width; x += r) {
        for (let y = 0; y < height; y += r) {
            let a = x%200;
            let b = y%200;
            if (a!==b) {
                one(x,y,Math.floor(random(0,8)),r);

            } else {
                strokeWeight(2);
                beginShape(LINES);
                vertex(random(x, x+r), y);
                vertex(random(x, x+r), y + r);
                endShape();
            }
        }
    }
    noLoop();
}